Azure ADにおける「アプリケーション」
Azure ADにおける文脈での「アプリケーション」(Application)の言葉の意味に注意 「webアプリ」とかのアプリと混同して難しくなりがちmiyamonz.icon
「アプリケーション」という用語の意味が、Azure Active Directory (Azure AD) のコンテキストで使用する場合に誤解されることがあります。
Azure AD と統合されているアプリケーションは、ソフトウェアとしての側面以外の意味を持ちます。
"アプリケーション" は、
アプリケーション ソフトウェアだけでなく、
実行時の認証/承認の "会話" におけるその Azure AD の登録やロールも指す概念的な用語としてよく使用されます。
定義上、アプリケーションは次の役割で作動できます。
クライアントの役割 (リソースを使用する)
リソース サーバーの役割 (クライアントに API を公開する)
クライアントとリソース サーバー両方の役割
以上の説明から、SNSの「連携アプリ」みたいなのを想像すれば良さそうmiyamonz.icon
https://gyazo.com/3bc2c0c4d3881e3d3a6a1c92cb363633
「Twitter」というSNSがあり、それに「診断メーカー」が連携する
Twitterから見て、診断メーカーは一つのアプリとして連携する、と考えられる
Azureにおいても同様に、Azure上のリソースを操作したり、逆にAzureに対して必要なAPIを公開したりなどのことをするオブジェクトの単位を「アプリケーション」と読んでいると理解できる
また、登録できるアプリケーションが2種類ある模様
アプリケーション オブジェクト
サービス プリンシパル オブジェクト
これの違いは上記ドキュメントを読んでもよくわからなかったmiyamonz.icon
アプリケーション オブジェクトはアプリケーションのグローバルな表現 (すべてのテナント用) であり、サービス プリンシパル オブジェクトはアプリケーションのローカルな表現 (特定のテナント用) と考えることができます。
ここだけみてなんとなく分かった気がした
現在miyamonz.iconが必要なのはサービスプリンシパルの方だけ
今回はアプリケーションオブジェクトの理解、及びサービスプリンシパルとの違いは追わなかった
また、人間の場合はAzure ADのユーザーという単位で管理されるが、人間とアプリが別であるのは自然な場合分けである